//HJ75 公共子串计算
#include <iostream>
#include<vector>
using namespace std;

int getM(const string& str1,const string& str2)
{
    int len1=str1.size();
    int len2=str2.size();
    vector<vector<int>> msc(len1,vector<int>(len2,0));

    int m_len=0;
    for(int i=0;i<len1;i++)
    {
        for(int j=0;j<len2;j++)
        {
            if(str2[j]==str1[i])
            {
                if(i>=1&&j>=1)
                msc[i][j]=msc[i-1][j-1]+1;
                else
                msc[i][j]=1;

                if(msc[i][j]>m_len)
                {
                    m_len=msc[i][j];
                }
            }
        }
    }
    return m_len;
}

int main() {
    string str1,str2;
    while(cin>>str1>>str2)
    {
        int m_len=getM(str1,str2);
        cout<<m_len<<endl;
    }
    return 0;
}